home *** CD-ROM | disk | FTP | other *** search
/ PsL Monthly 1993 December / PSL Monthly Shareware CD-ROM (December 1993).iso / prgmming / dos / tools / mdem4b.exe / MANUAL.TXT < prev    next >
Encoding:
Text File  |  1992-06-12  |  60.5 KB  |  1,456 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  
  16.  
  17.                          M A K E D E M O
  18.                         -----------------
  19.  
  20.  
  21.                             Version 4
  22.                            -----------
  23.  
  24.  
  25.                    U S E R ' S     M A N U A L
  26.                    ---------------------------
  27.  
  28.  
  29.  
  30.                     Last updated:  June, 1992
  31.  
  32.  _______________________________________________________________
  33. |                                                               |
  34. | MakeDemo is NOT a public domain program.  It is Copyright (c) |
  35. | 1989 - 1992 by WindhamWoods Publishing.  All rights reserved. |
  36. |_______________________________________________________________|
  37.  
  38.  
  39. COPYRIGHT INFORMATION
  40.  
  41.         This software and accompanying documentation are
  42. protected by United States Copyright law and also by
  43. International Treaty provisions.  Any use of this software in
  44. violation of Copyright law or the terms of LICENCE.DOC will be
  45. prosecuted to the best of our ability.  The conditions under
  46. which you may copy this software and documentation is clearly
  47. outlined in LICENCE.DOC.
  48.  
  49.         Registered users may install MakeDemo on a computer
  50. attached to a network, or remove it from one computer and install
  51. it on another, provided that the copy will not be used by more
  52. users than the number for which it was licensed.
  53.  
  54.         As a registered user, you may distribute any file which
  55. you create in part or in whole with this software. Further, you
  56. may include any screen(s) that you received with the MakeDemo
  57. distribution as part of your own presentation(s).
  58.  
  59.         Licensee shall not use, copy, rent, lease, sell, modify,
  60. decompile, disassemble, otherwise reverse engineer, or transfer
  61. the licensed program except as provided in this agreement.  Any
  62. such unauthorized use shall result in immediate and automatic
  63. termination of this license.
  64.  
  65.         Where differences exist between the foregoing information
  66. and that contained in "LICENCE.DOC," the latter shall govern.
  67.  
  68.  
  69. ASP Information
  70.  
  71.  
  72.                        _______
  73.                   ____|__     |                (R)
  74.                --|       |    |-------------------
  75.                  |   ____|__  |  Association of
  76.                  |  |       |_|  Shareware
  77.                  |__|   o   |    Professionals
  78.                -----|   |   |---------------------
  79.                     |___|___|    MEMBER
  80.  
  81.  
  82. "This program is produced by a member of the Association of
  83. Shareware Professionals (ASP).  ASP wants to make sure that the
  84. shareware principle works for you. If you are unable to resolve a
  85. shareware-related problem with an ASP member by contacting the
  86. member directly, ASP may be able to help. The ASP Ombudsman can
  87. help you resolve a dispute or problem with an ASP member, but
  88. does not provide technical support for members' products.  Please
  89. write to the ASP Ombudsman at 545 Grover Road, Muskegon, MI 49442
  90. or send a CompuServe message via CompuServe Mail to ASP Ombudsman
  91. 70007,3536."
  92.  
  93.  
  94.  
  95.                         Table of Contents
  96.  
  97.  
  98. a.      Copyright Information
  99.  
  100.  
  101. I.      Introduction
  102.  
  103.  
  104. II.     The Files of MakeDemo
  105.  
  106.  
  107. III.    Installation
  108.  
  109.  
  110. IV.     Starting Up MakeDemo
  111.  
  112.  
  113. V.      What MSHOW looks for in your Creation
  114.             Menus
  115.             Predefined System Menu Selections
  116.             Code Those Screens
  117.             Menu Mechanics
  118.             Prompt Screen
  119.             Be Mouse Ready
  120.  
  121.  
  122. VI.     Creating a Presentation with MDEMO
  123.             MDEMO Features
  124.             Using a Mouse
  125.             Large Fonts
  126.             Overlays, the Key to Presentation Effects
  127.             Viewing a Work-In-Process
  128.  
  129.  
  130. VII.    Making Single .EXE File Presentations
  131.             Branding (Optional)
  132.  
  133.  
  134. VIII.   MLITE, The MakeDemo Stripped Down Runtime
  135.  
  136.  
  137. IX.     MDEMO Quick Reference
  138.  
  139.  
  140. X.      Customer Support
  141.  
  142. _______________
  143. I. Introduction
  144.  
  145.         MDEMO, for creating, and its companion MSHOW, for
  146. viewing a presentation, together comprise the MakeDemo system
  147. that gives you the ability to present information on a PC or
  148. compatible computer of almost any persuasion, color or
  149. monochrome. And then there is MLITE, a stripped down version of
  150. MSHOW with some limitaions on features but worth the trade-off
  151. where disk space is a premium. See section VIII for the
  152. differences.
  153.  
  154. MakeDemo's architecture promotes
  155.  
  156. o   presenting information in as many as 2000 screens that
  157.     include your own menus and sub-menus, as you define them.
  158.  
  159. o   small files: a typical 100 screen self-contained presentation
  160.     consumes 120 kBytes: great for downloading over BBSs.
  161.  
  162. o   small memory usage: less than 80 kBytes of RAM, less memory
  163.     intensive than many TSR applications.
  164.  
  165. o   your own user interface design: you design all screens
  166.     including prompt screens, context sensitive help, etc.
  167.  
  168. o   language independence: your client sees only what you create.
  169.     There are no hard coded screens or messages that pop up in
  170.     your presentations.
  171.     
  172. o   capability of shelling out to DOS to run other program(s).
  173.  
  174.         First, there's MSHOW.EXE. By itself it does nothing:
  175. rather it reads an external or appended 'resource file'.  Think
  176. of MSHOW as a library of functions that can interpret your
  177. 'presentation' or resource file that you create with MDEMO.
  178.  
  179.         Second, there's MDEMO.EXE, used to create presentations
  180. to be displayed by MSHOW.EXE, either separately or combined with
  181. a presentation to form a single EXE file.
  182.  
  183.         MakeDemo gives the novice through expert user the ability
  184. to create slide show type presentations with sound effects,
  185. various screen overlaying techniques, and various delays with
  186. interactive menuing and mouse support.  MakeDemo includes tools
  187. to put full presentation into a single .EXE file complete with
  188. "F1 - Help" and your own order form: no extra file listing each
  189. screen for a presentation or a script language to learn if you
  190. want to include menus.
  191.  
  192.         MakeDemo is to screens what a good word processor is to
  193. paragraphs.  Think of MakeDemo as a text organizer for files of
  194. screens, not paragraphs.  As you work on a creation, add screens,
  195. insert blank screens, import text in 25 line chunks from ASCII
  196. files, screens captured from other software, or other MakeDemo
  197. files, in part or in whole. Then edit one screen at a time, move
  198. segments around or copy segments to "place" on other screens.
  199. Make copies of screens. Delete screens. Save groups of screens to
  200. new files. Sounds like a word processor: except that you scroll
  201. through a file screen by screen rather than line by line.  All
  202. with mouse support. But MakeDemo is more. Give your users control
  203. in how to view presentations. Simulate menu driven software for
  204. very realistic demos. Create a hypertext sort of system for
  205. quickly moving through a large presentation, such as a catalog or
  206. book on disk. Manually override color/monochrome display
  207. formatting. Now, when a "color display" is not stricly a color
  208. display, switch over instantly without first exiting to DOS,
  209. typing in some modifying commands, and then restarting the
  210. presentation all over again. In fact, view a presentation in
  211. process being created in color, as it would appear on a
  212. monochrome display.
  213.  
  214.         Choose from many large fonts when creating outstanding
  215. screens. Create boxes with automatic correction for crossing
  216. lines. Customize your own or add to selection of boxes and fonts
  217. with almost any ASCII text editor.
  218.  
  219.  
  220. PLEASE NOTE -
  221.  
  222.     Only one version of MakeDemo exists for both shareware and
  223.     registered use. Without the correct validation code, MDEMO
  224.     comes up in the 'shareware' mode. You need to register your
  225.     use of MakeDemo in order to receive your assigned validation
  226.     code in order to bypass the 'shareware' mode.
  227.  
  228.     Both MDEMO and MSHOW have identical and integral WindhamWoods
  229.     Publishing 'nag' screens that appear when certain conditions
  230.     are detected. Similarly, MLITE produces a single line
  231.     "reminder."
  232.  
  233.                         Shareware Users:
  234.  
  235.     The 'nag' screens appear if -
  236.  
  237.     1. You run MDEMO from the command line and do not include the
  238.        correct validation code.
  239.  
  240.     2. You start MSHOW or MLITE to view a presentation either
  241.  
  242.         with no file specified at all, or
  243.  
  244.         with a presentation file specified on the command line
  245.         (or integrated into a single .EXE file) created, or last
  246.         edited, with an unregistered version of MDEMO.
  247.  
  248.     In all cases, whenever the 'nag' screen appears, pressing any
  249.     key erases that screen and lets you continue, unheeded.
  250.  
  251.  
  252.                         Registered Users:
  253.  
  254.     The serial number for your copy of MakeDemo is located on the
  255.     2nd line of the file MDEMO.WWP. Upon start-up, MDEMO reads
  256.     that number and imbeds it and the validation code that was
  257.     included on the command line with MDEMO into any presentation
  258.     file that is edited or created. As a registered user, make
  259.     sure that the serial number is yours. The validation code
  260.     will only work with it to circumvent any WindhamWoods 'nag'
  261.     screens from appearing.
  262.          
  263.  
  264. _________________________
  265. II. The Files of MakeDemo
  266.  
  267.         MakeDemo is supplied in three self-extracting files
  268. listed below. Not only does packing MakeDemo into three files
  269. take about half the disk space, installing MakeDemo on your
  270. system is also easier. Packed into each is the same PACKING.LST
  271. file that completely lists all of the individual MakeDemo files.
  272.  
  273.         The following is a brief description of the three files.
  274. While each can stand alone in its own right, all three contain
  275. files necessary to successfully produce a MakeDemo presentation.
  276. For detailed information on installing MakeDemo on your system,
  277. please read section III - Installation.
  278.  
  279.  
  280. MDEM4A.ZIP              Overview of MakeDemo
  281.       .EXE
  282.              Contains the necessary files to produce a single
  283.              .EXE executible file, DEMO.EXE from WATCH_ME.1ST
  284.              created with MakeDemo. The resulting file with about
  285.              55 screens is a fully functioning sales pitch for
  286.              MakeDemo.
  287.  
  288. MDEM3B.ZIP              A More Elaborate Presentation
  289.       .EXE
  290.              This time you can create a single file presentation
  291.              of MakeDemo's "help" facilty. With about 200
  292.              screens, this presentation also created with
  293.              MakeDemo is a more elaborate example of MakeDemo's
  294.              capabilities. And this archive also contains the
  295.              MakeDemo manual.
  296.  
  297. MDEM4B.ZIP              MakeDemo Files
  298.       .EXE
  299.              Contains MDEMO.EXE and the ancillary utilities such
  300.              as the screen capture utility for those who are
  301.              ready to start creating their own presentations.
  302.              Also included are the various .DOC files that
  303.              complete the MakeDemo package. And for those who
  304.              would like a bare-bones MakeDemo runtime, there's
  305.              MLITE.EXE, great for a "shareware" front end to your
  306.              own programs.
  307.  
  308.  
  309. _________________
  310. III. Installation
  311.  
  312.         MakeDemo was designed to be accessed from its own
  313. directory. Therefore, you should place all the files supplied
  314. with MakeDemo in its own directory and include that directory in
  315. the PATH statement of your AUTOEXEC.BAT file.
  316.  
  317. IMPORTANT NOTE:  Be sure to reboot your computer after modifying
  318. your AUTOEXEC.BAT file. If you need help in this area, consult
  319. someone knowledgable in the workings of DOS.
  320.  
  321.         MakeDemo as supplied in three self-extracting files is
  322. ready for "unpacking" and placing on your hard disk (preferable)
  323. or other floppy disk. The full complement of files takes about
  324. 500 kBytes of disk space plus 250 k Bytes for the example files
  325. you'll be creating as you get started.
  326.  
  327.         As part of the unpacking process, you can declare a
  328. destination directory that doesn't as yet exist, in which case
  329. it will first be created automatically and the files unpacked to
  330. it.  In that case where the directory exists and the files of an
  331. older version of MakeDemo reside in it, you will be asked whether
  332. to overwrite an existing file of the same name, to which you
  333. should answer "yes."
  334.  
  335.         HARD DISK INSTALLATION
  336.  
  337.         Simply place the disk in the A drive and type
  338.  
  339.                 MDEM4A C:\MDEMO         and press <Enter>.
  340.  
  341.                         in like manner type
  342.  
  343.                 MDEM4B C:\MDEMO         and <Enter>.
  344.  
  345.                         in like manner type
  346.  
  347.                 MDEM4C C:\MDEMO         and <Enter>.
  348.  
  349.  
  350.         Once you have included the MakeDemo files in its own
  351. directory and have included that directory in the "PATH,"
  352. you can then call up MakeDemo from within any other directory.
  353. There's no need to keep multiple copies of a file and then
  354. inadvertantly loose track of the current one.
  355.  
  356.  
  357.         FLOPPY DISK INSTALLATION
  358.  
  359.         Use of MakeDemo on a computer without a hard disk is not
  360. recommended. The following information is provided for those
  361. hearty souls who persist in overcoming self imposed limitations.
  362.  
  363.         You need to format four disks before continuing. Simply
  364.         place the master disk in the A drive, one of the
  365.         formatted disks in drive B, and type
  366.  
  367.  
  368.                 MDEM4A B:               and press <Enter>.
  369.                 When completed, label disk "MSHOW."
  370.  
  371.         in like manner type, place another formated disk in drive
  372.         B and type
  373.  
  374.                 MDEM4B B:               and <Enter>.
  375.                 When completed, label disk "HELP."
  376.  
  377.         in like manner type, place another formated disk in drive
  378.         B and type
  379.  
  380.                 MDEM4B C:               and <Enter>.
  381.                 When completed, label disk "DOCS."
  382.  
  383.         The fourth disk holds the files for creating and viewing
  384.         a presentation.
  385.  
  386.         Place the fourth disk in drive A and the "DOCS" disk
  387.         in drive B and type
  388.  
  389.                 COPY B:MDEMO.EXE A:
  390.                 COPY B:*.WWP A:
  391.  
  392.         Replace the disk in drive B with the "HELP" disk and
  393.         type
  394.  
  395.                 COPY B:MDEMO.HLP A:
  396.  
  397.         Replace the disk in drive B with the "MSHOW" disk and
  398.         type
  399.  
  400.                 COPY B:MSHOW.EXE A:
  401.  
  402.         When completed, label disk "MDEMO."
  403.  
  404.  
  405. ________________________
  406. IV. Starting up MakeDemo
  407.  
  408.         Let's start by making an executible of the MakeDemo
  409. "help" system, just as you might do yourself.  All the DOS
  410. machine instructions are contained in the DEMO.BAT file, all
  411. ready to run.  The MDEMO.HLP file and MSHOW.EXE are combined to
  412. form M_HELP.EXE.  The first time you run this program, you'll
  413. see the 1st screen of the "Help" file, a menu screen, AND you
  414. will see disk activity while your computer crunches away creating
  415. an index of all the screens in the "Help" file. The time it takes
  416. to complete this chore depends upon the type machine you are
  417. using. You can use the presentation while the indexing continues
  418. in the background, but response will be sluggish. It's best to
  419. wait until the process is completed before trying to maneuver
  420. through the file.  Once the index is created, subsequent viewings
  421. will start almost immediately: the index, stored to disk is not
  422. recreated, but is automatically read from disk into memory, a
  423. much faster operation.
  424.  
  425.         As a registered user, you received a validation code. If
  426. you wish to use MakeDemo and bypass the "Shareware" screens, you
  427. must include your validation code on the command line when
  428. calling up MakeDemo.
  429.  
  430. NOTE: If you have installed MakeDemo on your hard disk in its
  431. own directory, and have included its directory in the "PATH"
  432. statement of your AUTOEXEC.BAT file and then rebooted, you're
  433. all set to change direcory to any other and call up MakeDemo.
  434.  
  435. If, on the other hand, you are using a dual floppy system, place
  436. your MDEMO disk, the fourth one you created in the unpacking
  437. process, in drive A and a preformatted disk in drive B. At the
  438. DOS prompt type PATH=A:\.  Then log onto drive B and you're
  439. ready to call up MakeDemo.
  440.  
  441. For example, if your validation code is SK1234, you would type
  442.  
  443.                 MDEMO SK1234    and <Enter>.
  444.  
  445.         Remember, that code is uniquely yours. Giving it to
  446. someone else along with the program really isn't much of a gift.
  447. After all, the shareware 'nag' screens aren't really that
  448. obnoxious. But violating the copyright laws deprives the authors
  449. of MakeDemo from receiving fair value for value rendered.
  450.  
  451.         If you have any questions once you have called up
  452. MakeDemo you can press F1 to see the "Help" categories from which
  453. to select more detailed help.  There's a lot of information in
  454. this help file. It is in itself a MakeDemo creation, similar to
  455. something which you yourself might wish to create.  To learn as
  456. much as possible in as little time as possible as to what makes a
  457. great presentation, use MDEMO itself to "Edit" the help file.
  458. There's no need to make any changes to the file. Just go through
  459. the screens and see how the menus are defined and what
  460. "appearance" options have been selected.
  461.  
  462.         To "Edit" the help file, select for the working
  463. directory that which contains the MakeDemo files, normally the
  464. MDEMO directory. At the DOS prompt type MDEMO and the validation
  465. code, if you are a registered user, and press <Enter>.  When the
  466. menu appears across the bottom of the page, select "Files,"
  467. highlight the help file, "MDEMO.HLP," and press <Enter>. Up will
  468. pop the first screen of the file. Now to see more of the
  469. screens, use the down and up arrows to move through the file,
  470. observing how the menus are constructed. For now, just observe.
  471. The details follow a little later in this document.  Select
  472. "More" to get the other half of the main menu and select
  473. "Appearance" to see what methods were selected for the screen
  474. that is shown.  When you're finished, press <Escape> and follow
  475. the directions.
  476.  
  477. _________________________________________________________________
  478. V.  What Gives MSHOW a Clue as to What, Where, and How to Present
  479.  
  480.         You need not be a 'programmer' in the old sense of the
  481. word in order to create a masterpiece. Knowing one's way around a
  482. word processor is qualification enough. To create an MSHOW
  483. 'presentation' requires following a few simple rules, which we
  484. will get to shortly.
  485.                                            
  486.         MSHOW interprets your presentation or resource file.
  487. There are just a few rules that impact how you go about its
  488. design. Your presentation or resource file is nothing more than a
  489. series of screens that describe to MSHOW your application. All
  490. the unique information is placed on the screens themselves. Upon
  491. presentation, this 'coding' information is blanked out.
  492.  
  493.         Upon startup, MSHOW almost immediately puts up the first
  494. screen, but then continues to 'index' the remaining screens in
  495. the background until completed. Indexing performs a number of
  496. functions. MSHOW creates a list, by name, of all screens in
  497. memory. MSHOW lets you include 'menus' in your document that uses
  498. this index of screen names. A menu is a list of choices, or
  499. screens, from which your user can select to view next. Hence,
  500. only screens that must be referenced need a unique name. MSHOW
  501. saves this index to disk in a file of the same name, but with
  502. the ".INX" extension.  When preparing to display a presentation
  503. MSHOW first looks to see if the index filke exists on disk.  If
  504. it is found and its date/time stamp is more recent than that of
  505. the presentation file itself, MSHOW reads it into memory.  Once
  506. created, this feature is a real time saver, especially on slower
  507. systems.
  508.  
  509.         The index file is in reality an ASCII text file. It can
  510. be printed out using the DOS TYPE command.  The name and length
  511. of each screen is stored seuentially, each separated by commas.
  512. You might want to refer to this file created by your own
  513. presentation in order to eliminate conflicts in screen names.
  514.  
  515.         You may also "code" your creation to become a
  516. self-running presentation of sorts. If you wish to let your users
  517. view your document as a presentation (ie. automatically present
  518. screens in menu order at pre-programmed intervals) and
  519. automatically recycle indefinately, or <Esc> is pressed,
  520. give your viewer access to the presentation options. (see the
  521. system menu options)
  522.  
  523. Menus:
  524.  
  525.         There is an optional menu screen and then there are the
  526. menus that are part of information you are presenting. The system
  527. menu, or virtual menu, has the rudimentary selections such as
  528. <F1>, <Esc>, <PgUp>, <PgDn>, and <Tab> always active, regardless
  529. of whether or not you assign additional keys to them or not. More
  530. about that later. These selections are always active whether or
  531. not they can be seen on the screen. These menus, if you have
  532. defined your own, are always as close as the <Tab> key or by
  533. moving the mouse to one of the screen edges.
  534.  
  535.         There are reserved names for these screens which MSHOW
  536. looks for upon startup. MSHOW looks for one and only one screen
  537. with one of these names
  538.  
  539.         LSIDE0        TSIDE0        BSIDE0        RSIDE0
  540.  
  541. PLEASE NOTE: These names are reserved and are not to be used for
  542. any other purpose.  If you do by chance try to include them in
  543. your own menu, strange things will happen and the results will be
  544. something less than acceptable.
  545.  
  546.         The architecture of MSHOW allows, even encourages, you to
  547. design these system screens to your own taste. Of course, feel
  548. free to use whatever screens you like of those supplied with
  549. MakeDemo. If you like, modify them with your your own context
  550. sensitive "Help".
  551.  
  552.         There are a number of predefined functions which your
  553. system menu may or may not include. That's up to you. For
  554. example, to give your viewer the ability to shell out to DOS, you
  555. must include the appropriate instructions on the system menu
  556. screen. Certain names are 'reserved' and if used, MSHOW expects
  557. conformance to the appropriate schema. We'll get into this schema
  558. later, but in the interests of being concise, all the information
  559. you will need for referal purposes is included here in one place.
  560.  
  561. Those menu selections are
  562.  
  563. Hard-   Soft-
  564. Coded   Coded                Actions Performed
  565. Keys    Functions
  566. -----------------------------------------------------------------
  567.  
  568. <Esc>   QUIT    returns the user to the previous menu, or out to
  569.                 DOS, whichever comes first. In the AUTO
  570.                 presentation mode, discussed below, the first
  571.                 press of <Esc> puts MSHOW into the SOUND mode,
  572.                 discussed below.
  573.  
  574. <PgDn>  PAGEDN  causes the next screen to appear provided screen
  575.                 has no name. A name of "+" or "-" is permitted
  576.                 where a repeating presentation is desired.
  577.  
  578. <PgUp>  PAGEUP  causes the previous screen to appear provided
  579.                 the present screen has no name. A name of "+" or
  580.                 "-" is permitted where a repeating presentation
  581.                 is desired.
  582.  
  583. <Tab>   TAB     causes MSHOW to search all screens stopping
  584.                 at the first with the name "_SIDE0". The "_"
  585.                 represents the characters "R", "T", "B", or "L".
  586.                 When using a mouse, MSHOW can differentiate
  587.                 between the various options, but without the
  588.                 mouse, MSHOW has no clue as to what the first
  589.                 letter might be. Only one system menu screens is
  590.                 permitted.
  591.  
  592. <F1>    HLLP    You can provide a sequence of screens as a
  593.                 general "Help" facility. These might be of a
  594.                 more general nature, explaining the typical
  595.                 maneuvers to progress through a presentation.
  596.  
  597.                 When a system menu screen is being presented,
  598.                 either by pressing the <Tab> key or moving the
  599.                 mouse to an edge, MSHOW presents the first
  600.                 overlay it finds on the screen. (Hopefully it is
  601.                 the system menu.) All other screen segments on
  602.                 that screen only appear when F1 is pressed. (See
  603.                 section on screen overlays.
  604.  
  605.         POFRM   Use this name to define a sequence of screens,
  606.                 such as a Purchase Order Form, that can be
  607.                 accessed from the system menu and or associated
  608.                 "hot" key. Of course, you can name your order form
  609.                 something different and give access to it from
  610.                 your own menu.
  611.  
  612.         PRIN    This keyword tells MSHOW to retrace to beginning
  613.                 of a menu selection or order form and send all
  614.                 the pertenent screens to the printer. You have
  615.                 the option of including a "prompt" screen,
  616.                 discussed further on, to give the user the
  617.                 opportunity of aborting the process before
  618.                 actually starting the print operation. If the
  619.                 "prompt" screen does not exist in your file,
  620.                 MSHOW sends the form to the printer, by default.
  621.  
  622.                 A screen is a chunk of 25 lines each. If you want
  623.                 to print a form on a single sheet of paper of 60
  624.                 lines, you are not limited to 2 screens. To
  625.                 prevent particular lines from going to the
  626.                 printer, merely place an <Alt>13 symbol at the
  627.                 beginning of that line on the screen. MSHOW
  628.                 ignores it and skips to the next line.
  629.  
  630.         SHELL   Give your users the ability to interupt viewing a
  631.                 presentation so as to temporarily go to DOS for
  632.                 doing something else, and then return to the
  633.                 application without losing a step.
  634.  
  635.         COLOR   MSHOW detects whether the system is
  636.                 configured with a monochrome or color monitor.
  637.                 In those cases where the user might not be happy with
  638.                 the default, include this ability to switch.
  639.  
  640.         FFUNC   reserved, but not used.
  641.  
  642.         RSVD    reserved, but not used.
  643.  
  644.      R e s e r v e d   f o r   P r o m p t   S c r e e n   O n l y
  645.      -------------------------------------------------------------
  646.         YES
  647.  
  648.         NO
  649.  
  650.      P r e s e n t a t i o n   O p t i o n s
  651.      ---------------------------------------
  652.        N_EFFECT No sound or graphics effects
  653.  
  654.         EFFECT  Graphics Effects such as overlay sliding, etc.
  655.  
  656.         SOUND   Same as above, but includes preset sound effects
  657.  
  658.         AUTO    Self running presentation with programmed delays
  659.  
  660.  
  661.         As part of your presentation, you have the ability to include
  662. your own menus that allow the user to move through a file in
  663. response to your defined menu selections. One group of screens
  664. might explain certain features of your system, another might be
  665. your order form. You can design menus with up to 30 selections on
  666. a single screen, sub-menus up to fifty deep, with a total of 2000
  667. screens in one file. Think of it as sort of a hypertext
  668. application.
  669.  
  670.  
  671. How do we Code the Screens for MSHOW to Interpret ?
  672.  
  673.         There is very little specific coding information that
  674. MSHOW needs to access. MSHOW is designed to do quite a lot on
  675. very little information. MSHOW does need to be able to discover
  676. the names you give to the first screen of a screen sequence.
  677.  
  678.         All these pieces of information are imbedded in lines
  679. starting eith either , or  ( ie. <Alt> 4 or <Alt> 6
  680. respectively.) These characters are keyboard accessible by
  681. simultaneously pressing the <Alt> key and the appropriate number
  682. key on the numberic keypad.
  683.  
  684.         Lines prefixed with either of these symbols can up to 80
  685. characters long and must appear within the top 6 lines of a
  686. screen. If one line is insufficient, use additional lines,
  687. provided each starts with the appropriate symbol followed by a
  688. comma. The name following either of the first two symbols can
  689. only appear once, if at all, on a screen.
  690.  
  691.         Generally speaking, the characters following these
  692. symbols mean -
  693.  
  694.  ( <Alt+4> ) screen name and menu selections ( if any. )
  695.  
  696.  ( <Alt+6> ) designates the place on the screen where, just to
  697.   the right, the menu selection.
  698.  
  699.   The area of the screen can have multiple lines but can not
  700.   exceed 256 character spaces. (For example, 8 rows by 32
  701.   columns.) MSHOW uses the color attribute of the area to
  702.   delineates it from that of the surrounding area.
  703.  
  704.   Let's take a closer look at the attribute. This is an
  705.   important point. MSHOW defines the width of a field by
  706.   looking for a background color change as it moves from left to
  707.   right after finding the beginning of the selection or field.
  708.   The foreground color (the printed characters) can differ along
  709.   the line but not the background color. when a change is
  710.   determined, meaning that the width has been calculated,
  711.   MSHOW then travels down the screen in this last column
  712.   looking for identical foreground and background colors. If
  713.   found, MSHOW assumes that the selection or field is more
  714.   than a single row and continues down the column looking for a
  715.   change, hence the last row. This is important. Menu selections
  716.   or fields can be placed on consecutive rows using the same
  717.   background / foreground colors. You ask "How can that be?" By
  718.   using a different foreground color for the last character
  719.   location on a line (usually this can be a space and the
  720.   foreground color doesn't show) adjacent rows that end in the
  721.   same column will not interfere with each other.
  722.  
  723.  
  724. The Mechanics of a Menu:
  725.  
  726.         Here is a typical menu designation. It names the screen
  727. "MENU" and contains six menu selection. Note each line is
  728. prefixed with <Alt+4>. Some printers are unable to print this
  729. character directly.
  730.  
  731.         MENU,ITEM1,ITEM2,ITEM3,ITEM4
  732.         ,ITEM5,ITEM6
  733.  
  734. MENU - is the name of the screen.
  735.  
  736. ITEM1 - is the first menu selection.
  737.  
  738. ITEM2 - is the second menu selection.     ...and so on.
  739.  
  740.         A screen should never be given a name unless it its to be
  741. assessed from another menu. Here's the rational. MSHOW allows the
  742. user to <PageDown> to adjacent screens if and only if that screen
  743. has no name or if that name is prefixed with a "+" or "-".
  744.  
  745.         If you wish to let your users view your document as a
  746. presentation (ie. automatically present screens in menu order)
  747. and automatically recycle indefinately, or until <Esc> is
  748. pressed, name the last screen, "-", and the screen to return to
  749. name "+". For example, if you want a repeating presentation to
  750. restart with screen 4, name screen 4 "+". And of course, name the
  751. last screen of the last menu selection "-".
  752.                                       
  753.         When <PagingUp> MSHOW lets you go no further back than a
  754. screen with a name. It shouldn't be too hard to visualize that a
  755. sequence of screens can be made inaccessible simply by giving the
  756. first of the sequence a name and then NOT including that name in
  757. any of your menus.
  758.  
  759.         The screen name, in this case "MENU", indicates that this
  760. screen, in addition to having a menu of its own, is to be
  761. accessed only from another menu screen.
  762.  
  763.         MSHOW recognises hot keys and/or function keys that you
  764. so designate as part of your menu.  To use this feature you
  765. include the designator with the menu selection above. For
  766. example, if we change menu item 1 to
  767.  
  768.                 "ITEM1=B-FF6",
  769.  
  770. then pressing the 'B' key or the 'F6' function key will also
  771. cause item 1 to be selected. A more realistic selection might be
  772.  
  773.                 "SHELL=S-FF6".
  774.  
  775. If you layout the menu screen with the "S" for "SHELL" bright
  776. white and the rest of the letters the subdued while or grey,
  777. right away the user intuitively knows that pressing the "S" key
  778. will cause "SHELL" to activate.
  779.  
  780. All the keys of the alphabet are permited as well as all the
  781. Function Keys, Control / Function keys, Shift / Function Keys,
  782. and Alternate / Function keys. The following is a list of the
  783. possibilities.
  784.  
  785.                 FF1  through FF10
  786.                 CF1  through CF10
  787.                 SF1  through SF10
  788.                 AF1  through AF10
  789.  
  790.         You can designate a hot key with a different foreground
  791. color for that key in your actual menu selection.
  792.  
  793. IMPORTANT NOTE: The equal "=" sign must preceed the "hot" key,
  794. the "-" must preceed the function key designation. Failure to
  795. respect this constraint will appear as non working or unwanted
  796. key assignemnts.
  797.  
  798.         For example, the following example should clarify things.
  799. Here is a menu selection of 4 rows of 20 characters each. The 'x'
  800. designates different foreground / background colors from those of
  801. the surrounding area.
  802.  
  803.         <Alt+6> xxxxxxxxxxxxxxxxxxxx
  804.                  xxxxxxxxxxxxxxxxxxxx
  805.                  xxxxxxxxxxxxxxxxxxxx
  806.                  xxxxxxxxxxxxxxxxxxxx
  807.  
  808.         You can place selections anywhere on the screen, put them
  809. in list boxes or in bars like those of MakeDemo. Or you can imbed
  810. them in text to make certain words "hot."
  811.  
  812.         Think of menus as a tree with branches. Start at the base
  813. of the tree (DOS) and climb up into the tree and trace your steps
  814. as you explore out to a leaf.  You probably won't give your
  815. viewers as many choices as they explore your "tree," but the
  816. concept is similar.  With MakeDemo the branches can vary in
  817. length, which is to say that you can show a number of screens
  818. before coming to the next named screen for another menu
  819. selection defined elsewhere. MSHOW lets your viewer progress
  820. through a series of screens until the next screen has a name
  821. defined. Trying to progress further returns the viewer to menu
  822. from whense he or she came. Except...
  823.  
  824.         There might be times when you might allow the viewer to
  825. move into the next menu selected series of screens without first
  826. returning to a menu.  For example, if you are putting together a
  827. catalog with a "Table of Contents," you might just as well let
  828. the viewer roam around in the general area without forcing a
  829. return to the "menu," before moving on.
  830.  
  831.         However, MakeDemo does impose a few restraints on such
  832. activity. The viewer can traverse backwards through the
  833. presentation only until he or she comes to a screen with a label
  834. on it.  You remember: a "label" is used by the menu to know which
  835. screen to present when a menu selection is made. For example,
  836. suppose screens are arranged as follows:
  837.  
  838.  
  839. Screen             Label                        Choices
  840. 1
  841. 2     <ALT+4>+MENU,,GOTO1,GOTO2         <ALT+6>GOTO1
  842.                                         <ALT+6>GOTO2
  843. 3     <ALT+4>HLLP
  844. 4
  845. 5
  846. 6     <ALT+4>GOTO1
  847. 7
  848. 8
  849. 9     <ALT+4>GOTO2
  850. 10
  851. 11
  852. 12
  853. 13
  854. 14    <ALT+4>-MENU
  855.  
  856.         This would be a typical organization for single .EXE
  857. presentation file. Here there would be a menu somewhere on screen
  858. 2 with two choices: "GOTO1" and "GOTO2." Screens 6, 7 and 8
  859. associated with GOTO1 and screens 9 through 14 are reached by
  860. selecting GOTO2. There is only one way to get to screen 6: that
  861. is by selecting GOTO1 from screen 2. However, there is an
  862. additional way to access screen 9; that is from screen 8, but
  863. only f the screen name were prefixed by a "-" sign.
  864.  
  865.         Now, if all that is true, then how does one access
  866. screens 3 through 5? That's simple; just press F1. Those screens
  867. are the "Help" facility, if you choose to have one. To include
  868. "Help," the first screen must be labeled "<ALT+4>HLLP".
  869.  
  870.         The "Help" screens should always be placed just after a
  871. menu screen or after the last screen of a choice. In that way
  872. there is no way for the user to stumble into Help except by
  873. pressing F1.
  874.  
  875.         Now, you may inquire about the choice on screen 14.
  876. There are several things you can do on the last screen. We chose
  877. to use the name of screen 2, the reason being that trying to
  878. move beyond that screen either in manual or automode will cause
  879. the presentation to repeat the presentation starting with screen
  880. 2. Or I could have given it no name, in which case, the
  881. presentation would wait there indefinately for someone to press
  882. <Esc>, which would precipitate a return to DOS.
  883.  
  884.         Three is one other nuance having to do with menus that
  885. you might have missed in viewing the presentation. For the
  886. sequence of screens shown above, you might have wondered what
  887. would happen when MakeDemo presented a menu while in the "auto"
  888. mode. Well, MSHOW would assume that you want to sequentially
  889. go through the menu and present every branch out to each leaf,
  890. return to the menu and follow the next branch, and so on. There
  891. might be a situation where you would like your viewer to be in
  892. automatic mode, but then stop at a menu screen and wait
  893. indefinately for a key press. To do that merely preceed the name
  894. of the menu screen with a question mark, "?". MakeDemo leaves it
  895. up to you as to how you wish your viewers to use your
  896. presentation.
  897.  
  898.  
  899. "PROMPT" Screen
  900.  
  901.         There are a number of situations whereby you might wish
  902. to prompt your user with a question and wait for an answer before
  903. proceeding. For example, before sending something to a printer,
  904. you might give your user instructions and a chance to abort the
  905. process before continuing. The screen name "PROMPT" is reserved
  906. for such an event. The screen is defined with
  907.  
  908.       <Alt+4>  PROMPT,,,,
  909.  
  910.  
  911. and the screen is layed out with 5 selections, the first three
  912. designated for information display, the last two for possible
  913. answers.  For example
  914.  
  915.  
  916.       <Alt+6>   xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
  917.  
  918.       <Alt+6>   xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
  919.  
  920.       <Alt+6>   xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
  921.  
  922.              <Alt+6>  Yes    <Alt+6> No
  923.  
  924.         The same rules apply here as for menu selection.
  925.  
  926.         And then somewhere on this screen is the information to
  927. be used when a prompt message is to be displayed.
  928.  
  929. For example,
  930.  
  931. 9,Order Form is Next,Prepare Printer,Continue ?,YES=Y,NO=N,1
  932.  
  933. The first character, in this case, the '9' is sacrosanct as well
  934. as the 'YES' and the 'NO'. The labels on the screen can be
  935. anything, but here they must be as shown. The three character
  936. strings appearing after the '9' can be anything you like to be
  937. displayed centered on the three lines. The individual strings
  938. can be any length, but total length of the line can not exceed
  939. 80 characters and must start at the left edge of the screen. And
  940. last but not least, the last character, her a "1" is the default
  941. if neither of the selections is selected: a "1" indicates a YES,
  942. a "0" indicates a NO.
  943.  
  944.  
  945. Be Mouse Ready:
  946.  
  947.         Certain screen areas are "hot," namely the edges: top,
  948. bottom, left, and right. pushing the mouse to an edge causes
  949. MSHOW to look for a system menu screen named "TSIDE0", "BSIDE0",
  950. "LSIDE0", "RSIDE0", representing top, bottom, left and right
  951. edges respectively.  If one of these screens exist, the menu is
  952. presented. Usually such a screen is constructed of two segments:
  953. the menu and its context sensitive help. To work properly, the
  954. menu must be positioned such that MSHOW finds it first before
  955. finding the "help" segment. Remember, MSHOW searches a screen
  956. left to right, top to bottom, to find a segment to display. With
  957. this scheme it is not possible to place a menu across the bottom
  958. of the screen with the "Help" segment above it. The menu must be
  959. found first.
  960.  
  961.  
  962. _____________________________________
  963. VI. Create a Presentation with MDEMO
  964.  
  965.         MDEMO is to screens what a word processor is to pages.
  966. Upon typing MDEMO at the DOS prompt and RETURN, the screen goes
  967. blank and a menu appears across the bottom of the screen.  This
  968. is screen # 1 of an as yet to be named file. It happens to be a
  969. blank screen because you have not yet done anything to improve
  970. its looks. However, there are things you can do.  You can "Edit"
  971. it by selecting "Edit." You can create a box and "Place" it
  972. anywhere on the screen. When you're finished doing either of the
  973. above, press <Esc> and you will be asked whether you wish to save
  974. the screen, and if so, name the file that will become the
  975. presentation you are working on.  From that point on you can
  976. perform a number of other operations upon that screen: like
  977. choosing the "More" menu selection to see the other half of the
  978. menu and then duplicating the screen or inserting a blank screen,
  979. to name two.
  980.  
  981.         Or, upon startup, you could select "Files" and "Fetch" a
  982. file that you previously worked on.  Or, if you are already
  983. working on a file, choose "Files" again to suspend operations in
  984. the work-in-process in order to look at another file with the
  985. possible goal of inserting one or more screens from it into the
  986. work-in-process.  Or you could look at previously "captured"
  987. screens and insert them where desired. Or you can look at an
  988. ASCII text file and import 25 line chunks.
  989.  
  990.         Before we go on; we assume that you have digested the
  991. "Help" file, "MDEMO.HLP". You saw them when you ran "DEMO.BAT." Or
  992. if you have dabbled with creating a presentation or two and have
  993. pressed F1, you got to the same file. It's important that you
  994. spend some time viewing this presentation before going any
  995. further in this manual. There's little sense duplicating that
  996. same information here when viewing it as a presentation is so
  997. much more satisfying.
  998.  
  999.         That done, you need to know that the "Help" file is not
  1000. just for viewing.  Disect it, take it apart. That's right -- go
  1001. into MakeDemo and edit them and see some of the behind-the-scenes
  1002. stuff. MDEMO is just the editor, if you will; MSHOW, the
  1003. presentor. We can talk a lot about interactive menus, but a
  1004. picture is worth a thousand words, so to speak.
  1005.  
  1006.         Go on: fetch a presentation, move through the screens
  1007. with a mouse or arrow keys and then "Save" it. Now you can save
  1008. some of the screens to a new file and then work on them separately.
  1009. Or you can save a screen to disk and "Fetch" it later into
  1010. another file or the same file but in a different place in the
  1011. sequence of screens.
  1012.  
  1013.         When working on a file, MDEMO handles screens just like a
  1014. word processor handles pages, except shuffling screens is a
  1015. little easier than shuffling pages. Changing the order of screens
  1016. can only be done with adjacent screens; and then you can only
  1017. swap the shown screen with the next screen or the previous
  1018. screen. You can walk a screen to a new location, but if the
  1019. number of screens to bypass is great, you might better "Save" the
  1020. screen and then "Fetch" it at the desired location.  Don't forget
  1021. to go back and delete the screen at its original loaction.
  1022.  
  1023.         For ease in handling, anticipate the presentation you
  1024. wish to create and try to break it down into a number of modules:
  1025. something along the lines of how you might define a number of
  1026. menu selections.  Work on these individually and when you are
  1027. finished with the pieces, combine them for the final result.
  1028.  
  1029.  
  1030. MDEMO Features:
  1031.  
  1032.         MDEMO has a number of features that make it easy for you
  1033. to create stunning screens with a minimum of effort.  Not only
  1034. can you edit anywhere on the screen, "Window" gives you the
  1035. capability to outline portion of the screen and, in effect,
  1036. "capture" that portion for editing. Turn on the "word-wrap"
  1037. feature by pressing <Insert>.  You can "Recolor" that portion
  1038. with the F3 and F4 function keys, you can make a "Copy" of it, or
  1039. "Erase" it or "Move" it and "Place" it somewhere else on that
  1040. screen or another. And you can resize the window by moving the
  1041. lower right corner using the <Ctrl> up arrow, down arrow, PgUp,
  1042. and PgDn keys.
  1043.  
  1044.         Remember to always "Place" a box you have created or a
  1045. portion of a screen that you have copied or moved before pressing
  1046. <Escape> to return to the main menu. In the event that you press
  1047. <Esc> without first "placing," in answer to the question, "Save
  1048. Screen?", answer "No." and try again.  When you want to "place" a
  1049. segment on another screen, as long as the segment has not been
  1050. "erased" in memory, it can still be "placed."
  1051.  
  1052.  
  1053. Using a Mouse:
  1054.  
  1055.         MDEMO is mouse aware; ie., if the mouse is NOT positioned
  1056. in the upper left corner of the screen.  If the mouse is anywhere
  1057. else, it is active. Pass it over a menu selection and watch that
  1058. selection become highlighted.
  1059.  
  1060.         Using a mouse really speeds things up. If you don't have
  1061. one, seriously think of getting one.  Whereas some programs let
  1062. you move a mouse anywhere on the screen with no apparent effect
  1063. other than seeing the mouse cursor move, MakeDemo immediately
  1064. shows you "hot" areas of the screen: you'll see the background
  1065. and foreground color change when the mouse passes over it. If you
  1066. see what looks like a menu, simply move the mouse to a what looks
  1067. like a selection and see if its colors change.  If it's a
  1068. selection you wish to make, merely click the left mouse button.
  1069.  
  1070.         Still, for those without a mouse, when a menu appears on
  1071. the screen, one of the selections is already highlighted. You
  1072. can use the arrow keys to maneuver through the various choices
  1073. and pressing <Enter> while highlighting a particular one,
  1074. selects that one.
  1075.  
  1076.         Backing out takes a few more words to explain.  Whether
  1077. using a mouse or not, pressing <Esc> any time causes one to step
  1078. back up through the menu tree and eventually out to DOS with
  1079. possibly some questions to answer (MDEMO only) before allowing
  1080. further retreat.  But the mouse works a little differently
  1081. whether you are using MakeDemo or viewing a presentation outside
  1082. of MakeDemo.  If within MakeDemo, moving the mouse off a
  1083. possible selection and clicking the left button does the same
  1084. thing as pressing the <Escape> key. If viewing a presentation,
  1085. such action is ignored. Instead, you must move the mouse right
  1086. to display the "mouse bar" on the right edge and move it to the
  1087. "Quit" row and then click the left button.
  1088.  
  1089.         You might ask, "Should I use the mouse in preference to
  1090. the arrow keys?"  Our experience indicates that using both can
  1091. really speed things up.  The trick we use here at WindhamWoods
  1092. Publishing in making presentations is to primarily use the
  1093. mouse with the right hand to block segments of the screen for
  1094. moving and copying etc., and with the left hand, be ready to
  1095. press the appropriate first letter of the command or menu
  1096. selection for what we want to do with it. Even if you have
  1097. chosen to hide the menu bars on the bottom lines of the screen,
  1098. the selections still work. It saves steps later after you know
  1099. the more commonly used keys.
  1100.  
  1101.         You might want to temporarily disable the mouse when
  1102. you're moving or copying a segment around on the screen.
  1103. Remember to move the mouse to the screen's upper left corner.
  1104. When using the mouse to move "pick & place" segments around on
  1105. the screen, note that the segment tries to adjust itself so that
  1106. its lower right corner aligns with the mouse. This is not always
  1107. possible, especially when the segment is wide, and then the mouse
  1108. appears to have no effect. Just be aware.
  1109.  
  1110.         Clicking the left button once anchors the box temporarily
  1111. and brings up a second menu on the next to bottom line of the
  1112. screen. It is not necessary to see this menu to use it. Once you
  1113. know what selections are available you can select one directly by
  1114. pressing the appropriate capitalized letter for that selection.
  1115.  
  1116.  
  1117. Large Fonts:
  1118.  
  1119.         After selecting "Edit" you can then select "Fonts" by
  1120. pressing the function key, F10.  You will be presented with a
  1121. window displaying a word in one of the many fonts that are
  1122. available. Press <Return> to select the displayed font; any other
  1123. key will display the same word in another font. Continually
  1124. pressing a key other than <Return> will cycle through all the
  1125. available fonts.
  1126.  
  1127.         Using any of the large fonts is somewhat crude.  For
  1128. simple tasks like making titles, etc., they work fine. However,
  1129. don't expect to be able to word wrap.
  1130.  
  1131.         In using large fonts, it's best to get what you want on
  1132. each line and then use "Pick & Place" to move a screen segment
  1133. into final position, etc.  When you are finished using a large
  1134. font, one press of <Escape> first gets you back to normnal font;
  1135. a second press gets you out of the "Edit" mode.
  1136.  
  1137.  
  1138. PLEASE NOTE: The fonts are contained in FONTS.WWP, an ASCII file
  1139. that you can add to or modify to your own wishes. The system is
  1140. pretty easy to figure out. Just be consistent.
  1141.  
  1142.  
  1143. Appearance Modes:
  1144.  
  1145.         There are three aspects to presenting a screen. First is
  1146. the method such as simulated blinds or sprinkling.  There are
  1147. over 20 choices: some for the entrire screen, some for overlays
  1148. where only a portion of the screen is updated. A second aspect is
  1149. "sound." Some of the methods have a built in sound effect unique
  1150. to that method. In general, it's best to forgo the sound effects
  1151. except where you desire to emphasize a particularly strong point.
  1152. They wear pretty thin after hearing them a few times. And lastly,
  1153. there is the duration with 5 choices available.
  1154.  
  1155.         To define the appearance options, they can be accessed by
  1156. selecting "More" at the main menu and then selecting
  1157. "Appearance."
  1158.  
  1159.  
  1160. Overlays, the Key to Presentation Effects.
  1161.  
  1162.         A screen of 25 rows by 80 columns has room for 2000
  1163. characters. However, a screen character also has color
  1164. information. For each character there exists a color attribute
  1165. "character" defining the background and foreground color.
  1166. Therefore, a screen commandeers 4000 bytes, of character space in
  1167. memory or on disk.
  1168.  
  1169.         There are 8 background (all low intensity) colors and 16
  1170. foreground (the same 8 low intensity and 8 new high intensity)
  1171. colors.
  1172.  
  1173.         MakeDemo makes the assumption that no presentation
  1174. segment will use a low intensity foreground color on a black
  1175. background. It really looks pretty drab.
  1176.  
  1177.         But that is not strickly true. As long as a segment box
  1178. has a top and left edge of a high intensity foreground on any
  1179. background, MakeDemo will be recognize the rectangle so defined
  1180. as a segment and deal with it accordingly. Just use spaces for
  1181. the top row and left column.  The foreground color is only used
  1182. for characters.
  1183.  
  1184.         MakeDemo finds the height and width of a segment, as we
  1185. discussed before, by first finding the upper left corner of a
  1186. segment, remembering the color attribute of that spot, and
  1187. "looking" along the top row from left to right for a change in
  1188. the color attribute or the screen edge, whichever comes first. In
  1189. like manner, MakeDemo "looks" down the left edge to find the
  1190. bottom row.
  1191.  
  1192.         Consequently, you can place segments, as defined by their
  1193. upper and left edges, anywhere on the screen and ShowDemo will be
  1194. able to find and display them. Stack them or place them side by
  1195. side.
  1196.  
  1197.         ShowDemo looks for the upper left corner of segments,
  1198. first from left to right, then top to bottom.
  1199.  
  1200.         Put a "bright" top and left edge on a screen and the
  1201. screen becomes one segment. Then use one of the display methods
  1202. that are designed for use with segmments, such as scrolling and
  1203. sliding.
  1204.  
  1205.  
  1206. Viewing a Work-in-Process:
  1207.  
  1208.         MDEMO gives you the ability to shell out to DOS. Once at
  1209. DOS again you run any program including MSHOW to view your
  1210. work-in-process. MSHOW.EXE is the file that presents your creation(s).
  1211. This one file can be used in stand alone fashion to present any
  1212. number of your creations, as in
  1213.  
  1214.                 MSHOW -fMYDEMO    or
  1215.                 MSHOW -fTHISDEMO  or
  1216.                 MSHOW -fTHATDEMO
  1217.  
  1218. for viewing.  When finished, remember to type EXIT and <Return>
  1219. to get back to your MDEMO session.
  1220.  
  1221.         Incidently, MSHOW has the capability for shelling out to
  1222. DOS should you choose to make it available to your viewers.
  1223.  
  1224. Or, as discussed in the next section, you can combine YOURDEMO
  1225. with MSHOW.EXE using WWP_MAKE.EXE to create a single executible
  1226. file.  For uploading and downloading over BBSs this makes the
  1227. most sense.
  1228.  
  1229. _________________________________________
  1230. VII. Making Single .EXE file presentations
  1231.  
  1232.         Any MakeDemo file can be made into its own .EXE file. But
  1233. there are a few restrictions. First of all, the number of screens
  1234. in a file can not exceed 2000. And second, if you want to include
  1235. your own "Help," it must be part of the same file. I suppose that
  1236. goes without saying.
  1237.  
  1238.         MSHOW.EXE serves two purposes.  It can be used as is to
  1239. present an MDEMO created file.  And it also is the basis for
  1240. making those smaller single .EXE file presentations.  The utility
  1241. WWP_MAKE.EXE does the work for you, by combining the necessary
  1242. elements into one file.
  1243.  
  1244.         The command line must include two arguments and,
  1245. optionally, a third.  MYDEMO.EXE, if it already exists, will be
  1246. replaced with the new.  The file names for the two arguments are
  1247. arbitrary; use any names you like. If WWP_MAKE can not find the
  1248. file specified by the second argument, it terminates and returns
  1249. to DOS.
  1250.  
  1251. C:\MDEMO> WWP_MAKE MYDEMO.EXE PRESENT.MD4 1234567,ABCD
  1252.                    ---------- |_ _ _ _ _ |------------
  1253.                         |     |Presenting|  Branding
  1254.                         |     |   File   |    Info
  1255.                         |     |_ _ _ _ _ |      |
  1256.                         |          |            |
  1257.     +- - - - - -+       |   _ _ _ _|            |
  1258.     |           |       |  |                    |
  1259.     | MSHOW.EXE |       |  |                    |
  1260.     |           |       |  |                    |
  1261.     +- - - - - -+       |  |                    |
  1262.           |      +- - - - - - - -+              |
  1263.           |      |  MYDEMO.EXE   |              |
  1264.           |_ _ _ |    Single     | _ _ _ _ _ _ _|
  1265.                  |     File      |
  1266.                  +- - - - - - - -+
  1267.  
  1268.  
  1269.         WWP_MAKE performs a number of functions including a "work
  1270. around" for a potential problem with machines using DOS versions
  1271. prior to 3.0.  Let me explain.  With the advent of 3.0, a single
  1272. file executible can determine its own file name, while executing,
  1273. and open itself a second time to make the presentation. To enable
  1274. your presentations to function on machines using prior versions
  1275. of DOS, MSHOW looks for the file name hard-coded into the EXE
  1276. composite file. If you were to "debug" such a file, you would
  1277. discover its name imbedded in the code.  A subtle consequence of
  1278. this "trick" is that your final creation will only work with DOS
  1279. versions below 3.0 PROVIDED that you DO NOT CHANGE the name of
  1280. the executible file after you have created it. It will not work
  1281. if RENamed.
  1282.  
  1283.  
  1284. Branding
  1285.  
  1286.         In addition, you have the option of branding your final
  1287. creation so that, should your viewer not use the correct validation
  1288. code which you assign, any 'nag' screens in your presentation
  1289. will be activated. Your creation will not be crippled in any way.
  1290. Any screen with the name "NAG" will be shown just like any other.
  1291. You can put anything on it that you like. In fact you can include
  1292. more than one NAG screen placed strategically in your file, as
  1293. long as each screen has the name "NAG".
  1294.  
  1295.         Note the third argument in the syntax for using
  1296. WWP_MAKE.EXE.  Here you should replace the number '1234567' with
  1297. some other number known only to you. That number seeds a quasi
  1298. random number generator. You can use any seven digit number above
  1299. 1000000, or one million;
  1300.  
  1301.         followed by a comma, with no spaces;
  1302.  
  1303.         followed by a four digit serial number to replace, ABCD,
  1304.         which you can choose to your liking, greater than 1000.
  1305.  
  1306.         To find the corresponding password for a unique serial
  1307. number, KEY.EXE has been included.
  1308.  
  1309.         The syntax for using KEY.EXE is
  1310.  
  1311.                     KEY 1234567
  1312.  
  1313.         where 1234567 is the same seed number discussed above.
  1314.  
  1315.         KEY will then ask for the serial number you imbeded in
  1316. your executible file and will display its corresponding password.
  1317. For example, if (as we did in DEMO.BAT) you use the seed number,
  1318. 1234567, and assign a serial number of 1000, then using the
  1319. utility, KEY.EXE, you would calculate the validation code to be
  1320. '2236'.
  1321.  
  1322.  
  1323. ________________________________________________
  1324. VIII.  MLITE, The MakeDemo Stripped Down Runtime
  1325.  
  1326.         Registered users have requested a MakeDemo runtime that
  1327. takes up as little disk space as possible while still providing
  1328. the minimum in fuctionality. MLITE.EXE weighs in at a little over
  1329. 13 k Bytes. It's sole function is to show a series of screens
  1330. (i.e. full screens: no overlays.) There is no provision for Help
  1331. at the touch of the F1 key. There is no support for either a
  1332. mouse or menus. And branding is not supporeted as well.
  1333.  
  1334.         There are two ways to exit MLITE. The first is the <Esc>
  1335. key which in addition sets the DOS ERRORLEVEL to a 1. The other
  1336. is the <Return> or <Enter> key which leaves the DOS ERRORLEVEL
  1337. set at 0.
  1338.  
  1339.         A presentation can be appended to the end of MLITE, just
  1340. like with MSHOW, except its length can not exceed 35 k Bytes.
  1341. That's about 45 screens, give or take.
  1342.  
  1343.         Seven and only seven key strokes are recognized:
  1344.  
  1345.     PgUp or
  1346.       Up Arrow Key      Presents previous screen
  1347.  
  1348.     PgDn or
  1349.       Down Arrow Key    Presents next screen
  1350.  
  1351.     F5                  Toggles between monochrome and color
  1352.  
  1353.     Return
  1354.       or Enter          Presents next screen, if it exists, or
  1355.                           exits with DOS ERRORLEVEL = 0
  1356.  
  1357.     Esc                 Exits presentation with DOS ERRORLEVEL = 1
  1358.  
  1359.  
  1360.         MLITE is useful for making a front end for other software
  1361. where a few expository screens would help get the novice users
  1362. off to a good start. For example, you might want to take a look
  1363. at START.BAT. We've used it as a way to start MDEMO with a few
  1364. start-up screens that experienced users can later avoid by
  1365. calling MDEMO directly from the command line. To those of us in
  1366. the shareware business, especially ASP members, now we can
  1367. present a more elaborate shareware message to first time users
  1368. without mucking up the programs themselves with allocated, but
  1369. never used again, memory.  Disk vendors can now incorporate a
  1370. small front end on all the disks they distribute.
  1371.  
  1372.         You'll note that START.BAT uses MLITE.EXE with a command
  1373. line argument: namely the name of the file to present,
  1374. MESSAGE.1ST. I could have used WWP_MAKE to combine the two into
  1375. an .EXE file, but I left them separate to minimize the size of
  1376. the archive.
  1377.  
  1378. IMPORTANT NOTE:  WWP_MAKE expects to append the presentation
  1379. file to a copy of MSHOW.EXE to produce the final .EXE file.
  1380. Therefore, if you wish to fool WWP_MAKE into using MLITE.EXE
  1381. instead, you must REName it to something like MSHOW1.EXE, COPY
  1382. MLITE.EXE to MSHOW.EXE, run WWP_MAKE, and then REName MSHOW1.EXE
  1383. to MSHOW.EXE.
  1384.  
  1385. To automate this process, you might consider writing two batch
  1386. files and place them in the directory with all the MakeDemo
  1387. files. Here are the two listings:
  1388.  
  1389.             REM GO_MLITE.BAT
  1390.             COPY MSHOW.EXE MSHOW1.EXE
  1391.             COPY MLITE.EXE MSHOW.EXE
  1392.  
  1393. and
  1394.  
  1395.             REM GO_MSHOW.BAT
  1396.             COPY MSHOW1.EXE MSHOW.EXE
  1397.  
  1398. With the MakeDemo directory listed in your "PATH" statement of
  1399. your AUTOEXEC.BAT file, you can make the switch while working in
  1400. any other directory.
  1401.  
  1402.  
  1403. _________________________
  1404. IX. MDEMO Quick Reference
  1405.  
  1406. Function Keys
  1407.         F1 - Help               F2 - MakeDemo Logo
  1408.         F3 - Background Color   F4 - Foreground Color
  1409.         F5 - Color/ Monochrome  F6 - Print (normally off)
  1410.         F7 - (not used)         F8 - Grab Color
  1411.         F9 - Menu (normally on) F10 - Fonts ( Edit only)
  1412.  
  1413. Pick & Place / Box / Recolor
  1414.         Move Box
  1415.             Horizontal          Left or Right Arrow Keys
  1416.             Vertical            Up or Down Arrow Keys
  1417.             Mouse               Mouse controls lower right
  1418.                                     corner. Box follows.
  1419.  
  1420.         Resize Box
  1421.             Horz.      <Ctrl> + Left or Right Arrow Keys
  1422.             Vert.      <Ctrl> + <PgUp> or <PgDn> Keys
  1423.             Mouse               HOLD DOWN Right Button.
  1424.                                     Anchors Upper Left Corner.
  1425.                                     Drag Mouse to Change Size.
  1426.                                     Release Right Button.
  1427.  
  1428.         Copy    Save segment to memory, leaving screen intact.
  1429.         Move    Same as "Copy" plus erase blocked screen area.
  1430.         Erase   Erase saved screen segment kept in memory.
  1431.         Blank   Erase blocked screen segment.
  1432.         Place   Replace screen segment with that now visible.
  1433.  
  1434. ___________________
  1435. X. Customer Support
  1436.  
  1437.         WindhamWoods Publishing is a small software company owned
  1438. and operated by Warren Munroe.  At WindhamWoods Publishing we
  1439. believe that the PRIMARY purpose of business is service, not
  1440. profit.  This concept is fundamental to our approach to product
  1441. development, production and marketing.  WindhamWoods Publishing
  1442. has been producing top quality computer software at reasonable
  1443. prices, continuously, since 1989.
  1444.  
  1445.         Please feel free to contact me (Warren Munroe) at any
  1446. time if you have any questions, comments or suggestions.  I can
  1447. be reached by mail, phone, or Compuserve:
  1448.  
  1449.    Warren Munroe              Phone:                 603.893.2667
  1450.    WindhamWoods Publishing    Orders & Tech Support  603.893.2667
  1451.    P. O. Box 314              CompuServe             72260,1700
  1452.    Windham, NH  03087
  1453.    U.S.A.
  1454.  
  1455.  
  1456.